﻿using Basic.HrRemoteModel;
using WeDonekRpc.Helper.Validate;

namespace Basic.HrGatewayModular.Model.Msg
{
    public class MsgQueryUI
    {
        [LenValidate("public.query.key.len", 0, 10)]
        public string QueryKey { get; set; }

        [NullValidate("hr.msg.classify.null")]
        [LenValidate("hr.msg.classify.len", 2, 10)]
        public string MsgClassify { get; set; }


        [EnumValidate("hr.msg.type.error", typeof(HrMsgType))]
        public HrMsgType MsgType { get; set; }

        public long? AppId { get; set; }
        /// <summary>
        /// 优先级
        /// </summary>
        public HrMsgPriority[] Priority { get; set; }

        [LenValidate("hr.msg.tag.len", 3)]
        public string Tag { get; set; }

        /// <summary>
        /// 是否超时
        /// </summary>
        public bool? IsTimeOut { get; set; }

        public DateTime? Begin { get; set; }

        public DateTime? End { get; set; }

        public HrMsgStatus? MsgStatus { get; set; }

        public bool? IsRead { get; set; }
    }
}
